package store

import (
	"context"
	"manager/model"
	"manager/model/entity"
)

type IArea interface {
	IExecTx
	Create(ctx context.Context, e *entity.Area) (int64, error)
	Find(ctx context.Context, id int64) (*entity.Area, error)
	FindByName(ctx context.Context, name string) (*entity.Area, error)
	Update(ctx context.Context, id int64, updates map[string]interface{}) error
	Delete(ctx context.Context, id int64) error
	List(ctx context.Context, in *model.AreaListRequest) (int, []*entity.Area, error)
}
